import threading
import time


# 为了让线程更好的封装，可以用threading模块下的Thread类，继承这个类，然后实现run方法，线程就回自动运行run方法中的代码

class read_thread(threading.Thread):
    def run(self):
        for x in range(3):
            print('在%s,正在读书(当前线程：%s)' % (time.ctime(), threading.current_thread()))
            time.sleep(1)


class write_thread(threading.Thread):
    def run(self):
        for x in range(3):
            print('在%s,正在写字(当前线程：%s)' % (time.ctime(), threading.current_thread()))
            time.sleep(1)


def main():
    read_threads = []  # 用来存放执行read函数线程的列表
    write_threads = []  # 用来存放执行write函数线程的列表

    for i in range(1, 2):  # 创建1个线程用于read()，并添加到read_threads列表
        t = read_thread()  # 创建实例存放
        read_threads.append(t)

    for i in range(1, 2):  # 创建1个线程执行write()，并添加到write_threads列表
        t = write_thread()
        write_threads.append(t)

    for i in range(0, 1):  # 启动存放在read_threads和write_threads列表中的线程
        read_threads[i].start()
        write_threads[i].start()


if __name__ == '__main__':
    main()
